package com.java.springcloud.mybatisplus.base.mapper;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author Administrator
 */
public interface TdBaseMapper<T> extends BaseMapper<T> {

    /**
     * 插入
     *
     * @param entity 实体
     * @return int
     */
    int tdInsert(T entity);

    /**
     * 批量插入
     *
     * @param list
     * @param tag
     * @return int
     */
    int tdBatchInsert(@Param("list") List<T> list, @Param("tag") T tag);


    /**
     * 根据 Wrapper 条件，查询全部记录
     *
     * @param queryWrapper
     * @return
     */
    List<T> tdSelectList(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);


    /**
     * 根据 Wrapper 条件，查询全部记录
     *
     * @param queryWrapper
     * @return
     */
    List<Map<String, Object>> tdSelectMaps(@Param(Constants.WRAPPER) Wrapper<T> queryWrapper);

}
